package com.changgou.goods.service;

import com.changgou.goods.pojo.*;
import com.github.pagehelper.PageInfo;

import java.util.List;

/****
 * @Author:传智播客
 * @Description:Category业务层接口
 * @Date 2019/6/14 0:16
 *****/
public interface CategoryService {

    /***
     * Category多条件分页查询
     * @param category
     * @param page
     * @param size
     * @return
     */
    PageInfo<Category> findPage(Category category, int page, int size);

    /***
     * Category分页查询
     * @param page
     * @param size
     * @return
     */
    PageInfo<Category> findPage(int page, int size);

    /***
     * Category多条件搜索方法
     * @param category
     * @return
     */
    List<Category> findList(Category category);

    /***
     * 删除Category
     * @param id
     */
    void delete(Integer id);

    /***
     * 修改Category数据
     * @param category
     */
    void update(Category category);

    /***
     * 新增Category
     * @param category
     */
    void add(Category category);

    /**
     * 根据ID查询Category
     * @param id
     * @return
     */
     Category findById(Integer id);

    /***
     * 查询所有Category
     * @return
     */
    List<Category> findAll();

    /**
     * 查询分类分类
     * @param parentId
     * @return
     */
    List<Category> findCateGoryParentId(Integer parentId);

    /**
     *      查询商品
     * @param categoryId
     * @return
     */
    List<Brand> findCategoryBrandById(Integer categoryId);
    /**
     *      查询模板
     * @param id
     * @return
     */
    Template findCategoryTemplate(Integer id);


    /**
     * @Description  查询规格
     * @ClassName CategoryController
     * @date 2019/11/13 19:23
     * @return
     */
    List<Spec> findByCategoryId(Integer id);

    /**
     * @Description 根据categoryId查询Para
     * @ClassName CategoryController
     * @date 2019/11/13 19:35
     * @return
     */
    Para findCategoryByPara(Integer id);

    /**
     * @Description 填写SKU信息（商品）
     * @ClassName CategoryController
     * @date 2019/11/13 18:27
     * @return
     */
    void saveUpdate(Goods goods);

}
